package cn.com.huzo.repository.tech;

import cn.com.huzo.model.entities.tech.ProductBomLinesProductColourEntity;
import huzofw.repository.GenericRepository;
import java.util.List;

/**
 * EBOM-成品色明细数据访问对象接口。
 *
 * @author 吴旭
 */
public interface ProductBomLinesProductColourRepository extends GenericRepository<ProductBomLinesProductColourEntity, String> {

    /**
     * 根据给定的EBOMID，得到成品色明细数据列表
     * <p>
     * @param headerId EBOMID
     * @return EBOM用成品颜色明细数据列表
     */
    List<ProductBomLinesProductColourEntity> fetchByHeaderId(Long headerId);

    /**
     * 根据选定的款号，从生产指示书得到成品色插入到该EBOM用成品色明细表
     *
     * @param headerId EBOMID
     * @param productId 产品ID
     * @return
     */
    Integer insertByStyleNo(Long headerId, Long productId);

    /**
     * 引入其他EBOM时，也同时引入相应的成品色
     *
     * @param headerId EBOMID
     * @param importedBomHeaderId 要引入的EBOMID
     * @return
     */
    Integer importLinesFromOtherBom(Long headerId, Long importedBomHeaderId);

    /**
     * 更新搭配用成品色排列顺序。
     *
     * @param itemsList 成品色排序数据
     * @return 影响行数
     */
    Integer updateProductColourOrder(List<ProductBomLinesProductColourEntity> itemsList);
}
